简介

参考:

说明

  • tensorflow 实质是一个编程系统,计算框架。
  • 其基于图(Graph)实现,将所有计算流程存储成有向图
  • 构建会话(Session)来分配内存、优化迭代,执行图的所有计算过程
  • 其输入为张量(tensor)代表数据;其计算过程通过迭代变量(Variable)实现【展现方式】
  • 图中用节点(Operation)计算。节点的具体实现是在GPU、CPU上。而一个点点往往对应一个或多个张量、或者变量、或者一个计算流程【实现流程】
  • 通过占位符来接收不同的外部输入【类似以字典的格式传参】

注意:

  1. 计算图只保存数据的输入和计算流程,列出了计算步骤,并不包含输出结果
  2. 会话对象包含指向全局图的指针,则节点创建在会话前后都无所谓。而sess.run()得到返回节点时,才会执行所有计算(类似spark中间的流程只是存储成计算方法, 到最后结果时才会去计算从而节约计算空间)
  3. 中间调用sess.run()的次数越少越好,对输出不同结果,最好在一次会话中进行(理由同上节约空间)
  4. 占位符在定义的时候需要定义输入数据的格式,以 输入的占位符名:传入的参数值 格式传参
  5. 给变量赋值的方法有两种:初始化器和tf.assign() 【应该用初始化器等方便些】

计算流程

  1. 输入输入张量、真实值和输出的结果
  2. 定义变量、确定计算方法,构建计算图节点
  3. 确定一个损失函数,以评估计算方法和真实结果
  4. 选择一个优化器根据损失函数迭代参数
  5. 新建会话,并执行输出结果的计算流程

results matching ""

    No results matching ""